// Copyright © SixtyFPS GmbH <info@slint.dev>
// SPDX-License-Identifier: GPL-3.0-only OR LicenseRef-Slint-Royalty-free-1.2 OR LicenseRef-Slint-commercial

import { ColorSchemeSelector } from "color-scheme.slint";

import { Button } from "button.slint";
export { Button }

import { ScrollView } from "scrollview.slint";
export { ScrollView }

import { ListItem } from "components.slint";
export { ListItem }

import { CosmicPalette, CosmicFontSettings } from "styling.slint";

export global StyleMetrics  {
    out property <length> layout-spacing: 8px;
    out property <length> layout-padding: 8px;
    out property <length> text-cursor-width: 1px;
    out property <color> window-background: CosmicPalette.background;
    out property <color> default-text-color: CosmicPalette.foreground;
    out property <color> textedit-background: CosmicPalette.background;
    out property <color> textedit-text-color: CosmicPalette.foreground;
    out property <color> textedit-background-disabled: CosmicPalette.control-disabled;
    out property <color> textedit-text-color-disabled: CosmicPalette.text-disabled;
    out property <bool> dark-color-scheme: Palette.color-scheme == ColorScheme.dark;
}

export global Palette {
    out property <brush> background: CosmicPalette.background;
    out property <brush> foreground: CosmicPalette.foreground;
    out property <brush> alternate-background: CosmicPalette.alternate-background;
    out property <brush> alternate-foreground: CosmicPalette.alternate-foreground;
    out property <brush> control-background: CosmicPalette.control-background;
    out property <brush> control-foreground: CosmicPalette.control-foreground;
    out property <brush> accent-background: CosmicPalette.accent-background;
    out property <brush> accent-foreground: CosmicPalette.accent-foreground;
    out property <brush> selection-background: CosmicPalette.selection-background;
    out property <brush> selection-foreground: CosmicPalette.selection-foreground;
    out property <brush> border: CosmicPalette.border;
    in-out property <ColorScheme> color-scheme <=> CosmicPalette.color-scheme;
}
